<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../dist/vue.js"></script>
</head>
<body>
    <!-- key的作用主要是为了高效的更新虚拟DOM。
        另外vue中在使用相同标签名元素的过渡切换时，也会使用到key属性，
        其目的也是为了让vue可以区分它们，否则vue只会替换其内部属性而不会触发过渡效果。 -->
    <div id="app">
        {{msg}}
        <input v-model="msg" />
        <template v-if="loginType === 'username'">
            <label>Username</label>
            <input placeholder="Enter your username" key="username-input">
        </template>
        <template v-else>
            <label>Email</label>
            <input placeholder="Enter your email address" key="email-input">
        </template>
        <button @click="toggle">Toggle login type</button>
        <h1 v-show="ok">Hello!</h1>
    </div>
</body>
<script>
    var vm = new Vue({
        el: '#app',
        data: {
            msg: 'hello Vue',
            loginType: 'username',
            ok: false//true
        },
        methods: {
            toggle() {
                this.loginType = '';
            }
        }
    });
</script>
</html>